package cn.com.surker.report.dao;

import cn.com.surker.report.entity.ReportProduction;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

/**
 * <p>
 * 生产分析 Mapper 接口
 * </p>
 *
 * @author admin
 * @since 2022-09-14
 */
public interface ReportProductionDao extends BaseMapper<ReportProduction> {

    /**
     * 统计集团周报
     * @param startDate
     * @param endDate
     * @return
     */
    List<ReportProduction> queryGroupWeekData(String startDate, String endDate);

    /**
     * 查询历史数据
     * @param orgId
     * @param today
     * @return
     */
    List<ReportProduction> queryByOneReport(Long orgId, String today, Integer type);

    /**
     * 查询月报统计数据
     * @param type
     * @param orgId
     * @param startDate
     * @param endDate
     * @return
     */
    ReportProduction queryMonthData(Integer type, Long orgId, String startDate, String endDate);

    /**
     * 查询年报统计数据
     * @param type
     * @param orgId
     * @param startDate
     * @param endDate
     * @return
     */
    List<ReportProduction> queryYearData(Integer type, Long orgId, String startDate, String endDate);

    /**
     * 查询历史数据
     * @param today
     * @return
     */
    List<ReportProduction> queryStationDetail(String today, Integer type);

    /**
     * 查询订单数汇总
     * @param type 0日1月2年
     * @param orgId 公司ID
     * @param today 开始日期
     * @return
     */
    ReportProduction totalOrder(Integer type, Long orgId, String today);

    /**
     * 查询同比订单汇总
     * @param type
     * @param orgId
     * @param today
     * @return
     */
    ReportProduction totalYOYOrder(Integer type, Long orgId, String today);

    /**
     * 查询总方量
     * @param type
     * @param orgId
     * @return
     */
    Double querySumStere(Integer type, Long orgId);
}
